package nonameclass;
/*
    匿名内部类对象的使用场景:
        1. 匿名内部类对象作为方法的实参进行传递!
        2. 匿名内部类对象作为方法的返回值进行返回
 */
public class Demo1 {
    public static void main(String[] args) {
        //启动use方法
        use(new InterB() {
            @Override
            public void function() {
                System.out.println("匿名内部类实现的function方法");
            }
        });

        //启动get方法
        InterB ib = get();
        ib.function();
    }
    /*
        InterB ib = new InterB() {
            @Override
            public void function() {
                System.out.println("匿名内部类实现的function方法");
            }
        };
     */
    public static void use(InterB ib) {
        ib.function();
    }

    public static InterB get(){
        return new InterB() {
            @Override
            public void function() {
                System.out.println("返回的匿名内部类对象~");
            }
        };
    }
}
